package com.travel.server.manager.dao;

import com.travel.server.manager.model.UserOrderTarget;
import com.travel.server.manager.model.UserOrderTargetExample;

import java.util.Date;
import java.util.List;

import com.travel.server.manager.model.dto.data.TargetStatisticsDto;
import org.apache.ibatis.annotations.Param;

public interface UserOrderTargetDao {
    int countByExample(UserOrderTargetExample example);

    int deleteByExample(UserOrderTargetExample example);

    int deleteByPrimaryKey(Integer id);

    int insert(UserOrderTarget record);

    int insertSelective(UserOrderTarget record);

    List<UserOrderTarget> selectByExample(UserOrderTargetExample example);

    UserOrderTarget selectByPrimaryKey(Integer id);

    int updateByExampleSelective(@Param("record") UserOrderTarget record, @Param("example") UserOrderTargetExample example);

    int updateByExample(@Param("record") UserOrderTarget record, @Param("example") UserOrderTargetExample example);

    int updateByPrimaryKeySelective(UserOrderTarget record);

    int updateByPrimaryKey(UserOrderTarget record);

    List<TargetStatisticsDto> selectTargetStatistics(@Param("startTime") Date startTime, @Param(("endTime")) Date endTime, @Param("offset") Integer offset, @Param("limit") Integer limit);

    Integer selectSumByExample(UserOrderTargetExample example);
}